#ifndef MAINWINDOW_H
#define MAINWINDOW_H

#include "filemgr.h"
#include "dbmgr.h"

#include <QMainWindow>

#include <memory>
#include <set>

namespace Ui {
class MainWindow;
}

class MainWindow : public QMainWindow
{
    Q_OBJECT

public:
    explicit MainWindow(QWidget *parent = 0);
    ~MainWindow();

private slots:
    void on_actionCreate_triggered();

private:
    void createNewProject();
    bool m_bOpen;
    std::string m_projectPath;
    std::string m_projectName;
    std::string m_sourcePath;
    std::shared_ptr<std::set<std::string>> m_supportedSuffixes;
    std::shared_ptr<DBMgr> m_dbMgr;
    std::shared_ptr<FileMgr> m_fileMgr;
    Ui::MainWindow *ui;
};

#endif // MAINWINDOW_H
